﻿using Afterbunny.ImageMarker.WPF.DTO;
using DistributedVisionRunner.Interface;
using System.Collections.Generic;

namespace DistributedVisionRunner.Tests.IntegrationTests.CanProcessFloatData
{
    public class Processor_CanProcessFloatData : IVisionProcessor<float>
    {
        public ProcessResult Process(List<float[]> data, string productType, int cavityIndex)
        {
            return new ProcessResult()
            {
                DisplayData = new List<GraphicPayload>()
                {
                    new GraphicPayload(new ImageData<float>(data[0]), 320, 240, 1, null)
                },
                Statistics = new Statistics()
                {
                    FloatResults = new Dictionary<string, double>()
                    {
                        ["Average"] = 100
                    }
                }
            };
        }

        public Dictionary<string, FileError> LoadFiles(string fileDir)
        {
            return null;
        }

        public string[] RawOutputNames { get; } = new[] { "Average" };
        public bool EnableWeighting { get; }
        public string[] WeightNames { get; }
        public string[] WeightedOutputNames { get; }
        public string Version { get; }
    }
}